<CodeStyleSettings>
  <CSharp>
    <FormatSettings>
      <ALIGN_LINQ_QUERY>False</ALIGN_LINQ_QUERY>
      <ALIGN_MULTILINE_ARGUMENT>False</ALIGN_MULTILINE_ARGUMENT>
      <ALIGN_MULTILINE_EXTENDS_LIST>False</ALIGN_MULTILINE_EXTENDS_LIST>
      <ALIGN_MULTILINE_FOR_STMT>False</ALIGN_MULTILINE_FOR_STMT>
      <ALIGN_MULTILINE_PARAMETER>False</ALIGN_MULTILINE_PARAMETER>
      <ALIGN_MULTIPLE_DECLARATION>False</ALIGN_MULTIPLE_DECLARATION>
      <ALIGN_MULTLINE_TYPE_PARAMETER_CONSTRAINS>False</ALIGN_MULTLINE_TYPE_PARAMETER_CONSTRAINS>
      <ALIGN_MULTLINE_TYPE_PARAMETER_LIST>False</ALIGN_MULTLINE_TYPE_PARAMETER_LIST>
      <ANONYMOUS_METHOD_DECLARATION_BRACES>NEXT_LINE</ANONYMOUS_METHOD_DECLARATION_BRACES>
      <BLANK_LINES_AFTER_USING_LIST>0</BLANK_LINES_AFTER_USING_LIST>
      <BLANK_LINES_AROUND_FIELD>0</BLANK_LINES_AROUND_FIELD>
      <BLANK_LINES_INSIDE_REGION>0</BLANK_LINES_INSIDE_REGION>
      <CASE_BLOCK_BRACES>NEXT_LINE</CASE_BLOCK_BRACES>
      <EMPTY_BLOCK_STYLE>TOGETHER_SAME_LINE</EMPTY_BLOCK_STYLE>
      <FORCE_ATTRIBUTE_STYLE>SEPARATE</FORCE_ATTRIBUTE_STYLE>
      <FORCE_FIXED_BRACES_STYLE>ALWAYS_ADD</FORCE_FIXED_BRACES_STYLE>
      <FORCE_FOR_BRACES_STYLE>ALWAYS_ADD</FORCE_FOR_BRACES_STYLE>
      <FORCE_FOREACH_BRACES_STYLE>ALWAYS_ADD</FORCE_FOREACH_BRACES_STYLE>
      <FORCE_IFELSE_BRACES_STYLE>ALWAYS_ADD</FORCE_IFELSE_BRACES_STYLE>
      <FORCE_USING_BRACES_STYLE>ALWAYS_ADD</FORCE_USING_BRACES_STYLE>
      <FORCE_WHILE_BRACES_STYLE>ALWAYS_ADD</FORCE_WHILE_BRACES_STYLE>
      <INITIALIZER_BRACES>NEXT_LINE</INITIALIZER_BRACES>
      <KEEP_BLANK_LINES_IN_CODE>1</KEEP_BLANK_LINES_IN_CODE>
      <KEEP_BLANK_LINES_IN_DECLARATIONS>1</KEEP_BLANK_LINES_IN_DECLARATIONS>
      <KEEP_USER_LINEBREAKS>False</KEEP_USER_LINEBREAKS>
      <LINE_FEED_AT_FILE_END>True</LINE_FEED_AT_FILE_END>
      <MODIFIERS_ORDER IsNull="False">
        <Item>public</Item>
        <Item>protected</Item>
        <Item>internal</Item>
        <Item>private</Item>
        <Item>new</Item>
        <Item>abstract</Item>
        <Item>virtual</Item>
        <Item>override</Item>
        <Item>sealed</Item>
        <Item>static</Item>
        <Item>readonly</Item>
        <Item>extern</Item>
        <Item>unsafe</Item>
        <Item>volatile</Item>
      </MODIFIERS_ORDER>
      <PLACE_CATCH_ON_NEW_LINE>False</PLACE_CATCH_ON_NEW_LINE>
      <PLACE_CONSTRUCTOR_INITIALIZER_ON_SAME_LINE>False</PLACE_CONSTRUCTOR_INITIALIZER_ON_SAME_LINE>
      <PLACE_SIMPLE_ANONYMOUSMETHOD_ON_SINGLE_LINE>False</PLACE_SIMPLE_ANONYMOUSMETHOD_ON_SINGLE_LINE>
      <PLACE_SIMPLE_LINQ_ON_SINGLE_LINE>False</PLACE_SIMPLE_LINQ_ON_SINGLE_LINE>
      <PLACE_TYPE_CONSTRAINTS_ON_SAME_LINE>False</PLACE_TYPE_CONSTRAINTS_ON_SAME_LINE>
      <SIMPLE_EMBEDDED_STATEMENT_STYLE>LINE_BREAK</SIMPLE_EMBEDDED_STATEMENT_STYLE>
      <SPACE_AROUND_MULTIPLICATIVE_OP>True</SPACE_AROUND_MULTIPLICATIVE_OP>
      <SPACE_BEFORE_ATTRIBUTE_COLON>True</SPACE_BEFORE_ATTRIBUTE_COLON>
      <SPACE_BEFORE_SIZEOF_PARENTHESES>False</SPACE_BEFORE_SIZEOF_PARENTHESES>
      <SPACE_BEFORE_TYPEOF_PARENTHESES>False</SPACE_BEFORE_TYPEOF_PARENTHESES>
      <WRAP_ARGUMENTS_STYLE>CHOP_IF_LONG</WRAP_ARGUMENTS_STYLE>
      <WRAP_BEFORE_BINARY_OPSIGN>True</WRAP_BEFORE_BINARY_OPSIGN>
      <WRAP_BEFORE_FIRST_TYPE_PARAMETER_CONSTRAINT>True</WRAP_BEFORE_FIRST_TYPE_PARAMETER_CONSTRAINT>
      <WRAP_EXTENDS_LIST_STYLE>CHOP_ALWAYS</WRAP_EXTENDS_LIST_STYLE>
      <WRAP_LIMIT>130</WRAP_LIMIT>
      <WRAP_MULTIPLE_DECLARATION_STYLE>CHOP_ALWAYS</WRAP_MULTIPLE_DECLARATION_STYLE>
      <WRAP_MULTIPLE_TYPE_PARAMEER_CONSTRAINTS_STYLE>CHOP_ALWAYS</WRAP_MULTIPLE_TYPE_PARAMEER_CONSTRAINTS_STYLE>
      <WRAP_PARAMETERS_STYLE>CHOP_IF_LONG</WRAP_PARAMETERS_STYLE>
    </FormatSettings>
    <UsingsSettings />
    <Naming2>
      <EventHandlerPatternLong>$object$_On$event$</EventHandlerPatternLong>
      <EventHandlerPatternShort>$event$Handler</EventHandlerPatternShort>
      <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="TypesAndNamespaces" />
      <PredefinedRule Inspect="True" Prefix="I" Suffix="" Style="AaBb" ElementKind="Interfaces" />
      <PredefinedRule Inspect="True" Prefix="T" Suffix="" Style="AaBb" ElementKind="TypeParameters" />
      <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="MethodPropertyEvent" />
      <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="aaBb" ElementKind="Locals" />
      <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="aaBb" ElementKind="LocalConstants" />
      <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="aaBb" ElementKind="Parameters" />
      <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="PublicFields" />
      <PredefinedRule Inspect="True" Prefix="_" Suffix="" Style="aaBb" ElementKind="PrivateInstanceFields" />
      <PredefinedRule Inspect="True" Prefix="_" Suffix="" Style="aaBb" ElementKind="PrivateStaticFields" />
      <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="Constants" />
      <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="PrivateConstants" />
      <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="StaticReadonly" />
      <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="PrivateStaticReadonly" />
      <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="EnumMember" />
      <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="Other" />
    </Naming2>
    <CustomMemberReorderingPatterns><![CDATA[<?xml version="1.0" encoding="utf-8" ?>

<!--
I. Overall

I.1 Each pattern can have <Match>....</Match> element. For the given type declaration, the pattern with the match, evaluated to 'true' with the largest weight, will be used 
I.2 Each pattern consists of the sequence of <Entry>...</Entry> elements. Type member declarations are distributed between entries
I.3 If pattern has RemoveAllRegions="true" attribute, then all regions will be cleared prior to reordering. Otherwise, only auto-generated regions will be cleared
I.4 The contents of each entry is sorted by given keys (First key is primary,  next key is secondary, etc). Then the declarations are grouped and en-regioned by given property

II. Available match operands

Each operand may have Weight="..." attribute. This weight will be added to the match weight if the operand is evaluated to 'true'.
The default weight is 1

II.1 Boolean functions:
II.1.1 <And>....</And>
II.1.2 <Or>....</Or>
II.1.3 <Not>....</Not>

II.2 Operands
II.2.1 <Kind Is="..."/>. Kinds are: class, struct, interface, enum, delegate, type, constructor, destructor, property, indexer, method, operator, field, constant, event, member
II.2.2 <Name Is="..." [IgnoreCase="true/false"] />. The 'Is' attribute contains regular expression
II.2.3 <HasAttribute CLRName="..." [Inherit="true/false"] />. The 'CLRName' attribute contains regular expression
II.2.4 <Access Is="..."/>. The 'Is' values are: public, protected, internal, protected internal, private
II.2.5 <Static/>
II.2.6 <Abstract/>
II.2.7 <Virtual/>
II.2.8 <Override/>
II.2.9 <Sealed/>
II.2.10 <Readonly/>
II.2.11 <ImplementsInterface CLRName="..."/>. The 'CLRName' attribute contains regular expression
II.2.12 <HandlesEvent />
-->

<Patterns xmlns="urn:shemas-jetbrains-com:member-reordering-patterns">

  <!--Do not reorder COM interfaces and structs marked by StructLayout attribute-->
  <Pattern>
    <Match>
      <Or Weight="100">
        <And>
          <Kind Is="interface"/>
          <Or>
            <HasAttribute CLRName="System.Runtime.InteropServices.InterfaceTypeAttribute"/>
            <HasAttribute CLRName="System.Runtime.InteropServices.ComImport"/>
          </Or>
        </And>
        <HasAttribute CLRName="System.Runtime.InteropServices.StructLayoutAttribute"/>
      </Or>
    </Match>
  </Pattern>

  <!--Default pattern-->
  <Pattern  RemoveAllRegions="true">

    <!--public delegate-->
    <Entry>
      <Match>
        <And Weight="100">
          <Access Is="public"/>
          <Kind Is="delegate"/>
        </And>
      </Match>
      <Sort>
        <Name/>
      </Sort>
    </Entry>
    
    <!--public enum-->
    <Entry>
      <Match>
        <And Weight="100">
          <Access Is="public"/>
          <Kind Is="enum"/>
        </And>
      </Match>
      <Sort>
        <Name/>
      </Sort>
    </Entry>

    <!--static fields and constants-->
    <Entry>
      <Match>
        <Or>
          <Kind Is="constant"/>
          <And>
            <Kind Is="field"/>
            <Static/>
          </And>
        </Or>
      </Match>
      <Sort>
        <Kind Order="constant field"/>
      </Sort>
    </Entry>
    
    <!--instance fields-->
    <Entry>
      <Match>
        <And>
          <Kind Is="field"/>
          <Not>
            <Static/>
          </Not>
        </And>
      </Match>
      <Sort>
        <Readonly/>
        <Name/>
      </Sort>
    </Entry>

    <!--Constructors. Place static one first-->
    <Entry>
      <Match>
        <Kind Is="constructor"/>
      </Match>
      <Sort>
        <Static/>
      </Sort>
    </Entry>

    <!--Setup/Teardown-->
    <Entry>
      <Match>
        <And Weight="101">
          <Or>
            <Kind Is="method"/>
            <Override/>
          </Or>
          <Or>
            <HasAttribute CLRName="NUnit.Framework.SetUpAttribute" Inherit="true"/>
            <HasAttribute CLRName="NUnit.Framework.TearDownAttribute" Inherit="true"/>
            <HasAttribute CLRName="NUnit.Framework.FixtureSetUpAttribute" Inherit="true"/>
            <HasAttribute CLRName="NUnit.Framework.FixtureTearDownAttribute" Inherit="true"/>
            <HasAttribute CLRName="NUnit.Framework.SetUpAttribute" Inherit="false"/>
            <HasAttribute CLRName="NUnit.Framework.TearDownAttribute" Inherit="false"/>
            <HasAttribute CLRName="NUnit.Framework.FixtureSetUpAttribute" Inherit="false"/>
            <HasAttribute CLRName="NUnit.Framework.FixtureTearDownAttribute" Inherit="false"/>
          </Or>
        </And>
      </Match>
    </Entry>

    <!--Test methods-->
    <Entry>
      <Match>
        <And Weight="100">
          <Kind Is="method"/>
          <HasAttribute CLRName="NUnit.Framework.TestAttribute" Inherit="false"/>
        </And>
      </Match>
      <Sort>
        <Name/>
      </Sort>
    </Entry>
    
    <!-- public properties, indexers-->
    <Entry>
      <Match>
        <And Weight="101">
          <Access Is="public"/>
          <Or>
            <Kind Is="property"/>
            <Kind Is="indexer"/>
          </Or>
        </And>
      </Match>
      <Sort>
        <Name/>
      </Sort>
    </Entry>
    
    <!--interface implementations-->
    <Entry>
      <Match>
        <And Weight="100">
          <Kind Is="member"/>
          <ImplementsInterface/>
        </And>
      </Match>
      <Sort>
        <ImplementsInterface Immediate="true"/>
        <Name/>
      </Sort>
    </Entry>

    <!--public methods-->
    <Entry>
      <Match>
        <And Weight="100">
          <Kind Is="method"/>
          <Access Is="public"/>
        </And>
      </Match>
      <Sort>
        <Name/>
      </Sort>
    </Entry>
    
    <!-- other properties, indexers-->
    <Entry>
      <Match>
        <Or>
          <Kind Is="property"/>
          <Kind Is="indexer"/>
        </Or>
      </Match>
      <Sort>
        <Name/>
      </Sort>
    </Entry>

    <!--all other members-->
    <Entry>
      <Sort>
        <Name/>
      </Sort>
    </Entry>
    
    <!--nested types-->
    <Entry>
      <Match>
        <Kind Is="type"/>
      </Match>
      <Sort>
        <Name/>
      </Sort>
    </Entry>
  </Pattern>
  
</Patterns>
]]></CustomMemberReorderingPatterns>
  </CSharp>
  <VB>
    <FormatSettings />
    <ImportsSettings />
    <Naming2>
      <EventHandlerPatternLong>$object$_On$event$</EventHandlerPatternLong>
      <EventHandlerPatternShort>$event$Handler</EventHandlerPatternShort>
    </Naming2>
  </VB>
  <Web>
    <Naming2 />
  </Web>
  <Xaml>
    <Naming2>
      <UserRule Name="XAML_FIELD" Inspect="True" Prefix="" Suffix="" Style="aaBb" />
      <UserRule Name="NAMESPACE_ALIAS" Inspect="True" Prefix="" Suffix="" Style="AaBb" />
      <UserRule Name="XAML_RESOURCE" Inspect="True" Prefix="" Suffix="" Style="AaBb" />
    </Naming2>
  </Xaml>
  <XML>
    <FormatSettings>
      <BlankLineAfterProcessingInstructions>False</BlankLineAfterProcessingInstructions>
      <MaxBlankLines>1</MaxBlankLines>
      <ProcessingInstructionAttributesFormat>OnDifferentLines</ProcessingInstructionAttributesFormat>
      <ProcessingInstructionSpaceAfterLastAttr>True</ProcessingInstructionSpaceAfterLastAttr>
      <TagAttributesFormat>OnDifferentLines</TagAttributesFormat>
    </FormatSettings>
  </XML>
  <GenerateMemberBody />
  <Naming2>
    <EventHandlerPatternLong>$object$_$event$</EventHandlerPatternLong>
    <EventHandlerPatternShort>Handle$event$</EventHandlerPatternShort>
    <PredefinedRule Inspect="True" Prefix="_" Suffix="" Style="aaBb" ElementKind="PrivateInstanceFields" />
    <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="TypesAndNamespaces" />
    <PredefinedRule Inspect="True" Prefix="I" Suffix="" Style="AaBb" ElementKind="Interfaces" />
    <PredefinedRule Inspect="True" Prefix="T" Suffix="" Style="AaBb" ElementKind="TypeParameters" />
    <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="MethodPropertyEvent" />
    <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="aaBb" ElementKind="Locals" />
    <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="aaBb" ElementKind="LocalConstants" />
    <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="aaBb" ElementKind="Parameters" />
    <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="PublicFields" />
    <PredefinedRule Inspect="True" Prefix="s" Suffix="" Style="AaBb" ElementKind="PrivateStaticFields" />
    <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="Constants" />
    <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="PrivateConstants" />
    <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="StaticReadonly" />
    <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="PrivateStaticReadonly" />
    <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="EnumMember" />
    <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="Other" />
    <UserRule Inspect="True" Prefix="" Suffix="" Style="AaBb" StaticnessKind="Static, Instance" AccessRight="Private, Protected, ProtectedInternal, Internal" Description="">
      <ElementKinds>
        <Kind Name="METHOD" />
      </ElementKinds>
      <ExtraRule Prefix="_" Suffix="" Style="AaBb" />
    </UserRule>
    <UserRule Inspect="True" Prefix="_" Suffix="" Style="aaBb" StaticnessKind="Instance" AccessRight="Protected" Description="Fields (protected)">
      <ElementKinds>
        <Kind Name="FIELD" />
        <Kind Name="READONLY_FIELD" />
        <Kind Name="CONSTANT_FIELD" />
      </ElementKinds>
    </UserRule>
    <Abbreviation Text="BDD" />
  </Naming2>
</CodeStyleSettings>